Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

1.2K
Visualizações
¿Por qué terraform falla con "Aquí no se espera un argumento llamado "flow_log_destination_type""?

"Mientras estoy usando terraform para crear un módulo de registro de flujo de vpc en el depósito s3, arroja errores como: Aquí no se espera un argumento llamado "flow_log_destination_type". Aquí no se espera un argumento llamado "flow_log_destination_arn". En los documentos de Terraform, puedo vea los detalles que se completarán como log_destination_type y log_destination_arn, y encontré algunos documentos en GitHub que dicen exactamente el mismo código pero al intentarlo no funciona para mí

Se produjo el siguiente error:

 Error: Unsupported argument on main.tf line 52, in module "vpc_with_flow_logs_s3_bucket": 52: flow_log_destination_type = "s3" An argument named "flow_log_destination_type" is not expected here. Error: Unsupported argument on main.tf line 53, in module "vpc_with_flow_logs_s3_bucket": 53: flow_log_destination_arn = "${aws_s3_bucket.terra-test2-lifecycle.arn}" An argument named "flow_log_destination_arn" is not expected here. Error: Unsupported argument on main.tf line 55, in module "vpc_with_flow_logs_s3_bucket": 55: vpc_flow_log_tags = { An argument named "vpc_flow_log_tags" is not expected here.

¿Dónde estoy haciendo mal?"

 module "vpc" { source = "terraform-aws-modules/vpc/aws" version = "2.33.0" # Interpolated from the workspace name = "${terraform.workspace}" cidr = var.vpc_cidr azs = var.vpc_azs private_subnets = var.vpc_private_subnets public_subnets = var.vpc_public_subnets enable_nat_gateway = var.vpc_enable_nat_gw single_nat_gateway = var.vpc_single_nat_gw public_subnet_tags = { Name = "${terraform.workspace}-public" } private_subnet_tags = { Name = "${terraform.workspace}-private" } tags = { Name = "${terraform.workspace}" } vpc_tags = { owner = "PEDevOps" environment = "${terraform.workspace}" version = "0.0.1" managedby = "Terraform" } } module "vpc_with_flow_logs_s3_bucket" { source = "../../" log_destination_type = "s3" log_destination_arn = "${aws_s3_bucket.terra-test2-lifecycle.arn}" vpc_flow_log_tags = { Name = "vpc-flow-logs-s3-bucket" } } resource "aws_s3_bucket" "terra-test-lifecycle" { bucket = "terra-test-lifecycle" acl = "private" lifecycle_rule { id = "log" enabled = true prefix = "log/" tags = { "rule" = "log" "autoclean" = "true" } transition { days = 30 storage_class = "STANDARD_IA" # or "ONEZONE_IA" } expiration { days = 60 } } lifecycle_rule { id = "tmp" prefix = "tmp/" enabled = true expiration { date = "2020-06-06" } } }

¿Por qué terraform falla con "Aquí no se espera un argumento llamado "flow_log_destination_type""?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

El módulo en "../../" no declara ninguna de las variables log_destination_type , log_destination_arn o vpc_flow_log_tags y Terraform considera que es un error asignar variables no declaradas en un bloque de módulo como este:

 module "vpc_with_flow_logs_s3_bucket" { source = "../../" log_destination_type = "s3" log_destination_arn = "${flow_log_destination_arn}" vpc_flow_log_tags = { Name = "vpc-flow-logs-s3-bucket" } }

Lo más probable es que "../../" sea la ruta de origen incorrecta para el módulo vpc_with_flow_logs_s3_bucket y debería solucionarlo. Si se encuentra en la ruta de origen del módulo donde se declara este bloque de módulo y ejecuta cd ../../ , ¿termina en el directorio con el código vpc_with_flow_logs_s3_bucket Terraform? De lo contrario, la fuente está configurada incorrectamente y debe corregirla.

Si "../../" es la ruta correcta, debe agregar las declaraciones de variables faltantes.

 variable "log_destination_type" { type = string } variable "log_destination_arb" { type = string } variable "vpc_flow_log_tags" { type = map(string) }
over 4 years ago · Santiago Trujillo Relatório

0

Este error ocurre si está pasando una variable que el módulo no espera.

Por ejemplo

 module "vpc_with_flow_logs_s3_bucket" { source = "../../" log_destination_type = "s3" log_destination_arn = "${flow_log_destination_arn}" vpc_flow_log_tags = { Name = "vpc-flow-logs-s3-bucket" } }

Si especifica esto, arrojará un error si la variable flow_log_destination_arn está definida en main.tf y no en variables.tf

fuente: ../../vpc_with_flow_logs_s3_bucket/main.tf

 resource "aws_flow_log" "example" { iam_role_arn = "${aws_iam_role.example.arn}" log_destination = "${aws_cloudwatch_log_group.example.arn}" traffic_type = "ALL" vpc_id = "${aws_vpc.example.id}" }
over 4 years ago · Santiago Trujillo Relatório

0

Compartiré otra posible razón de este error.

Escribiendo un bloque de configuración como este:

 scaling_config = { desired_size = 2 max_size = 2 min_size = 2 }

En lugar de (Observe el signo = igual):

 scaling_config { desired_size = 2 max_size = 2 min_size = 2 }

Dará un error de An argument named "scaling_config" is not expected here .


(*) Tenga en cuenta que después del cambio, si el tipo de bloque realmente no es compatible, el título del error cambiará de:

 Error: Unsupported argument

Para:

 Error: Unsupported block type

Con mensaje de error de:

 Blocks of type "scaling_config" are not expected here.
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda